#ifndef HPLC_ZKYS_SENDCOMMONSYSTEMPACKET_H
#define HPLC_ZKYS_SENDCOMMONSYSTEMPACKET_H

#include "basesendpacket.h"

namespace hplc
{
namespace zkys
{

class HplcZkysProtocolCommonData;
class HplcZkysSendCommonSystemPacket
{
public:
    HplcZkysSendCommonSystemPacket(HplcZkysProtocolCommonData &data);

    void setReset();
    void setRestoreDefault(quint8 flag);
    void setSaveAsDefault();
    void setSuperPassword(char *str);
    void getSuperPassword();
    void getSoftwareVersion();
    void getHardwareVersion();
    void setProductDate(char *str);
    void getProductDate();
    void setSerialNumber(char *str);
    void getSerialNumber();
    void setModel(quint8 model);
    void getModel();
    void setModelString(char *str);
    void getModelString();
    void setUsedTime(quint32 time);
    void getUsedTime();
    void setProtocol(quint8 protocol);
    void getProtocol();

    void setDebugPort(quint8 port);
    void getDebugPort();
    void setPrintVariants();


    void setRandomCode(quint32 randomCode);
    void getRandomCode();
    void setActiveCode(quint32 activeCode);
    void getActiveCode();
    void setUsefulDays(quint16 usefulDays);
    void getUsefulDays();
    void setPowerOnInfo(quint8 code, char *info);

protected:
    HplcZkysProtocolCommonData *m_d = nullptr;
};

} // zkys
} // hplc

#endif // HPLC_ZKYS_SENDCOMMONSYSTEMPACKET_H
